(_) Project Sugar Cake - Palworld Sex and Stats Framework (_)

Created and Maintained by : Michael "Spirit Shard" Stanich

Discord - The Broken Chatbox - https://discord.gg/h3vB7S4FEw
Website - https://www.michaelpstanich.com/
v (Donations! =^-^=) v
SubscribeStar - https://subscribestar.adult/michaelpstanich



(_) What is Sugar Cake? (SCake for short) (_)

Project Sugar Cake is a sex animation and gameplay stats framework for Palworld focused on providing the baseline for adult content in Palworld. SCake allows animators to import their animations into Palworld, then animators and users can use those individual animations to create Animation Events (effectively entire scenes) for customized playback of complex animations. (More on this below) SCake also adds additional stat tracking to create dynamic stats that don't fit within the game's native structure (such as some naughty stats ^.-).



< - > Self Promotion < - >

I'm never really great at asking for donations, but if you never mention it people may not even know about it! So here I am, letting you know I have a SubscribeStar! - https://subscribestar.adult/michaelpstanich (SCake is completely free with no paywalls, but Subscribers do get a special role on Discord and other benefits regarding other projects of mine!) If you can't help support the project financially, that's ok! I appreciate any little bit of help, whether that's just in giving feedback and bug reports, or by just sending a politely worded message!



(_) Notice! (_)

All versions of Project Sugar Cake from 0.5 DEV forward will require UniPalUI! SCake uses UniPalUI for the UI and input handling, without it technically SCake can still play animations and function but you may lack any meaningful way to customize or trigger animations depending on your configuration, and you won't get the on-screen adjustment UI and customizations or FreeCam support... (Just get UniPalUI ^-^ - https://www.michaelpstanich.com/?mode=modhack&view=2024-10-16_Palworld_UniPalUI)



(_) Known Critical Issues (_)

Triggering animations isn't tested in every possible scenario, so if you start animations in weird conditions stuff may break! If you find something that breaks with anims, please report it so a work-around/fix/validation can be made for it!



(_) Features List (_)

 <> Custom Animation Player
 - - > A fully custom Animation Player built with erotic animations in mind. The system allows animators and scene creators to define stages with automatic climax and post climax support. Users get access to various advanced settings to customize their experience with SCake to their preference!

 <> Custom JSON importer for Animations
 - - > Project Sugar Cake features a fully customizable and dynamic way to import animations through JSON files which both animators and users can fully customize in any plain text editor! Create either simple Animation Events with easy to understand data, or go full scene master with advanced settings and crazy potential! (You can even share your customized events by sharing your own JSON file with others, all without ever needing to animate!)

 <> Integrations with UniPalUI for Custom UI, Input, and FreeCam
 - - > Uses UniPalUI to implement a simple to use user interface for customizing settings and adjusting animations while also using UniPalUI's input functions for easy debug controls and FreeCam during animations! Also comes with a set of custom UI elements specifically tailored for SCake and its functions!

 <> Pal Stat Tracking
 - - > Tracking for custom stats that can be used either by animations or through external mods using the SCake SDK called modules! SCake handles the rising/lowering and tracking without requiring any input from the user!
 
 <> Additional Genders System
 - - > While Palworld may only have Male/Female internally, with SCake's additional tracking and systems we can register more! Project Sugar Cake extends gender support and allows users to configure different spawn rates for the custom genders and animations are configured with sexual bits in mind, not 'male/female' locks, which allows you to install some lovely futa mods and have them recognize as such within SCake!

 <> Preference Settings
 - - > May not sound like a big deal at first, but let's say you're not into a specific kind of animation or combination? Instead of having to sift through all your animations and manually disable/remove them, instead you can change your preference settings to block certain anims from playback!
 
 <> Full Persistence
 - - > SCake has its own save system for additional data unique to the mod! These saves are in .json format (so you can edit them externally) and save per-world save, so you can have different settings per-world! You can also use "AdjustProfiles" to customize how characters position during animations, and since these save as a JSON file like other saved data, they persist and are share-able!

 <> Oh, did I mention this is a Framework? We have an API and SDK!
 - - > Provided along-side SCake is the SCake SDK as well as documentation on the various functions you can call within SCake. This allows you to create modules for SCake through Blueprints with all the powers UE5 provides! (Requires the Palworld Modding Kit for all functions to work properly)



(_) Inputs (_)

SCake uses UniPalUI for input handling, so UniPalUI must be installed to use keybinds and the menu!

Default Key Bindings
- - Shift+K : Open Animation Control for Target (Hold for summon)
- - R in Animation : Open Adjust Menu
- - J : Touch Self / J with Debug : Target Self for Animation (Hold to touch self)
- - G with Debug : Target For Animation (Hold for summon)
- - H with Debug : Clear Animation Targets (Hold to start animation)
- - Shift+[ with Debug : Increase Sex Heat of Targets (by 10)
- - Shift+] with Debug : Decrease Sex Heat of Targets (by 10)

("With Debug" means "Enable Debug Controls" is enabled in settings)



(_) How to install the SCake framework (_)

Note : When SCake is installed and running, blue text will show up on the top left part of the game screen, saying it's either installed (title screen) or running (in-game). Use this to determine if the mod has been installed correctly.

- Download both Project Sugar Cake and UniPalUI, then unzip the archives and from inside the folder for your platform, copy LogicMods and ~mods folder into "[Palworld Install]/Pal/Content/Paks"

- In the ~mods folder, enter the "AnimJSON" folder and run the "__Create_Load_List__.bat" file to auto-fill the load list (You'll need to run this any time you install new animation .json files)

[ + If the .bat file fails to run or says "Access Denied" you can try moving the entire AnimJSON folder to your desktop, running the .bat file, then placing it back. Remember to check if it actually filled the _LoadList.json with the .json names. If it still failed you'll just have to enter in the .json file name for each animation pack you have installed manually into the _LoadList.json in JSON format (so like "AnimPak1","AnimPak2","","" ect, use https://jsoneditoronline.org/ to help with formatting). ]

- Install the proper version of UE4SS (Latest version with updated Palworld) - https://github.com/UE4SS-RE/RE-UE4SS

[ + Ensure inside the UE4SS install, inside the "mods" folder, open the "mods.txt" and make sure "BPModLoaderMod" is set to 1 ]

[ + If your game starts crashing after installed UE4SS, open the UE4SS-settings.ini file that is within the UE4SS install and set "bUseObjectArrayCache" to false ]

[Optional, sort of]
- Must install animation packs (Detailed below)

- Remember to run the "__Create_Load_List__.bat" file every time you install new animations with .json files! (If the .bat file doesn't run, you can enter the .json file names for animations you want to load in-game manually into the _LoadList.json file)



(_) How to install animation packs (_)

~ For .json installs ~
- Follow their provided instructions if they say where to install the .pak file, otherwise place this is in "Pal/Content/Paks/~mods"

- Place the provided .json file in "Pal/Content/Paks/~mods/AnimJSON/" and run the "__Create_Load_List__.bat" in the same folder (if the .bat isn't working for you, you can enter in the names of the .json files manually instead, can also try moving the AnimJSON folder to the desktop before running the .bat then moving it back)

- Now it should load in-game the next time .json animations are registered!



(_) How to add and create animation packs (_)

For a full guide you can read it over on my website at https://www.michaelpstanich.com/article/SCake_HowToMakeAnimsGuide.html or follow the links on our Discord!

To add more animations you just need to (correctly) import the animations into UE5.1 with the correct file path (Content/Mods/YourModName), convert the animation into an animation montage (right click the animation sequence and it will show up in that list), ensure you do what ever edits are required for your montage/animation to look and function correctly (Remember for looping animations to open your montage, go to the "montage sections" tab, and tickmark where it should loop! If you have no sections, just click the 'default' checkbox and it will loop the full animation.).

Once you have the animation montage you can export the .pak file and place it in ~mods, note the file-paths you had in UE5.1 as we'll need these to register the animation properly.
Open the appropriate templates provided in the AnimJSON folder from SCake and enter in the correct metadata for your animation, delete any sections/data you're not using for your animation. (Note: You can check the "Sugar Cake - Metadata.txt" provided with SCake for a description of the parameters, the "_SCake_TemplateWithExplainations.json" has sections explaining each parameter and may be a good place to start reading while using other .json files as a reference to create your own)

With your .json file complete, rename it to match your pack name and include it with your .pak when distributing your animation pack! I recommend testing the pack before distribution, so install it like any other pack by placing the .json file to the AnimJSON folder and adding the file name to the "_loadlist.json" file, then load up in-game and trigger the animations.



(_) Questions and Answers (FAQ) (_)

Question : I installed everything and it doesn't work!
Answer : Install everything PROPERLY and it'll work! Read the install section carefully and follow things step by step, copying files isn't complicated! Also make sure you're not using Vortex mod manager, it can break your install and doesn't install mods like SCake properly!

Question : Does SCake work in Multiplayer?
Answer : Not yet, in a peer-to-peer game you can have the host start animations but no other player will see or be able to start animations. If you want to play multiplayer with SCake you'll have to wait for multiplayer to be properly supported! (join the discord and listen in for when we're doing multiplayer tests if you want to help out!)


(_) Want to implement more animations? Feel free to contact me or interact with our Discord! We're a community thriving on creativity and would be really glad to help! (_)